
//临时保存备件和工装的更换
var PartAndToolTableInit = function(pkId){
	var oTableInit = new Object();
	var planId = pkId;
	console.log("该行id为："+planId);
    //初始化Table，页面加载时发出请求，获取数据
    oTableInit.Init = function () {
        	$('#PartAndToolTable').bootstrapTable({
            url: ctx +'/maintain/maintenanceTask/getTemps/get.mvc',         //请求后台的URL（*）
            method: 'get',                      //请求方式（*）
//          toolbar: '#toolbar',                //工具按钮用哪个容器
            striped: true,                      //是否显示行间隔色
            cache: false,                       //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
            pagination: true,                   //是否显示分页（*）
            paginationLoop:false,
            sortable: true,                     //是否启用排序
            sortOrder: "asc",                   //排序方式
            queryParams: oTableInit.queryParams,//传递参数（*）
            sidePagination: "server",           //分页方式：client客户端分页，server服务端分页（*）
            pageNumber:1,                       //初始化加载第一页，默认第一页
            pageSize: 5,                       //每页的记录行数（*）
            pageList: [5,10],        //可供选择的每页的行数（*）
            search: false,                       //是否显示表格搜索，此搜索是客户端搜索，不会进服务端，所以，个人感觉意义不大
            strictSearch: true,
            showColumns: false,                  //是否显示所有的列
            showRefresh: false,                  //是否显示刷新按钮
            minimumCountColumns: 2,             //最少允许的列数
            clickToSelect: true,                //是否启用点击选中行
            height: 300,                        //行高，如果没有设置height属性，表格自动根据记录条数觉得表格高度
            uniqueId: "pkId",                     //每一行的唯一标识，一般为主键列
            showToggle:false,                    //是否显示详细视图和列表视图的切换按钮
            cardView: false,                    //是否显示详细视图
            detailView: false,                   //是否显示父子表
            singleSelect:false,                    //禁止多选
            checkboxHeader:true,                 //列头取消多选
            columns: [
            {
            	checkbox:true,
            	align : 'center',
                valign : 'middle',
            },
            {
            	title: '序号',
            	align : 'center',
                valign : 'middle',
                formatter : function (value, row, index){
                	var options = $('#PartAndToolTable').bootstrapTable('getOptions');  
                	console.log(options.pageSize * (options.pageNumber - 1) + index + 1);
                    return options.pageSize * (options.pageNumber - 1) + index + 1;  
                }
            },
            {
                field: 'type',
                title: '类型',
                sortable:false,
                align : 'center',
                valign : 'middle',
                formatter : function (value, row, index){
                	if(value==0){
                		return '备件'
                	}
                	if(value==1){
                		return '工装'
                	}
                }
                
            }, {
                field: 'code',
                title: '新编码',
                sortable:false,
                align : 'center',
                valign : 'middle',
            }, {
                field: 'name',
                title: '名称',
                sortable:false,
                align : 'center',
                valign : 'middle',
            },
            {
                field: 'nSerialNum',
                title: '新序列号',
                sortable:false,
                align : 'center',
                valign : 'middle',
            },
            {
            	field: 'locationName',
                title: '备件位置名称',
                sortable:false,
                align : 'center',
                valign : 'middle',
            },
            {
                field: '',
                title: '原编码',
                sortable:false,
                align : 'center',
                valign : 'middle',
                formatter : function (value, row, index){
                	if(row.type==0){
                		return row.code
                	};
                	if(row.type==1){
                		return row.oCode
                	}

                }
            },{ 
                field: 'oSerialNum',
                title: '原序列号',
                sortable:false,
                align : 'center',
                valign : 'middle',
                
            },{
                field: 'useFlag',
                title: '状态',
                sortable:false,
                align : 'center',
                valign : 'middle',
                formatter : function (value, row, index){
                	if(row.type==0){
                    	if(value==''){
                    		return ''
                    	}
                    	if(value==0){
                    		return '可使用'
                    	}
                    	if(value==1){
                    		return '不可用'
                    	}
                	};
                	if(row.type==1){
                    	if(value==0){
                    		return '送修'
                    	}
                    	if(value==1){
                    		return '报废'
			}
                        if(value==2){
                            return '可使用'
                    	}
                	}

                }
            },{
                field: 'num',
                title: '个数',
                sortable:false,
                align : 'center',
                valign : 'middle',
                
            }],
        });
    };	
    //得到查询的参数
    oTableInit.queryParams = function (params) {
        var temp = {   // 这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的
            size: params.limit,   // 页面大小
            num: (params.offset/params.limit) + 1,  // 页码
        	sort: params.sort,
        	order: params.order,
        	planId : planId
        };
        return temp;
    };
    return oTableInit;    
    
};

var RepPartOrTool = function(){
var _initPartCodeSelect2;
var _initLocationCodeSelect2;
var _initNseriNumCodeSelect2;
var _initOseriNumCodeSelect2;
var _initToolCodeSelect2;
var _initOToolCodeSelect2;
var _initProcessToolCodeSelect2;
var _initProcessPartCodeSelect2;
	return {
		init : function(){
			RepPartOrTool._addPartAndToolModalHidden();
			RepPartOrTool.addPartOrTool();
			RepPartOrTool._changeTypeInfo();
			RepPartOrTool._initPartCodeChange();
			
			RepPartOrTool._initLocationCodeChange();//编码改变事件
			RepPartOrTool._initLocationCodeChangeOseri();
			_initNseriNumCodeSelect2 = RepPartOrTool._initNseriNumCodeSelect2();//初始化新序列号
			RepPartOrTool._initToolCodeChange();//初始化工装编码改变事件
			RepPartOrTool.upDatePartOrTool();
			RepPartOrTool.delPartOrTool();
			RepPartOrTool.validatorPartToolForm();
            RepPartOrTool._initoToolCodeChange();
		},
        //改变原工装编码
        _initoToolCodeChange:function () {
            $("#oCode").on("change",function () {
                var equipCode = $.map($('#malfunctionTable').bootstrapTable('getSelections'), function (row) {
                    return row.equipCode;
                });
                var toolCode = $("#oCode").find("option:selected").text();
                $.ajax({
                    url: ctx + "/tool/replace/getoToolBytoolCode/get.mvc",
                    type: "post",
                    dataType: "json",
                    data: {
                        equipCode : equipCode.toString(),
                        toolCode: toolCode
                    },
                    success: function (response) {
                        if (response.result === true) {
                            if(response.data) {
                                $("#toollocationCode").val(response.data.equipPosition);
                                $("#toollocationName").val(response.data.equipPositionName);
                            }
                        } else {
                            DialogUtil.error(response.message);
                        }
                    },
                    error: function () {
                        DialogUtil.error("系统繁忙！");
                    }
                });
            })
        },
		//初始化备件/工装更换
		initProcessPartAndToolTable : function(){
			var ids = $.map($('#malfunctionTable').bootstrapTable('getSelections'), function (row) {
		        return row.pkId;
		    });
			//创建对象之前先消除对象，否则不会再创建该对象
			$("#PartAndToolTable").bootstrapTable('destroy'); 
			//1.初始化Table
		    var ptoTable = new PartAndToolTableInit(ids.toString());
		    //激活table事件
		    ptoTable.Init();
		    $("#myModal .yes").attr("disabled",false);
		    $("#errorTask").hide();//隐藏校验框
		    RepPartOrTool.validatorPartToolForm();
		
		},
		//新增备件或工装模态框消失事件
        _addPartAndToolModalHidden : function () {
            $("#partOrToolModal").on("hide.bs.modal",function(e){
                $('#partOrToolModal input').each(function() {
                    if ($(this).val() !== "" ) {
                        $(this).val("");
                    }
                });
                $("#partCode").val(null).trigger("change");
                $("#locationCode").val(null).trigger("change");
                $("#nSerialNum").val(null).trigger("change");
                $("#oSerialNum").val(null).trigger("change");
                $("#toolCode").val(null).trigger("change");
                $("#oCode").val(null).trigger("change");
                $("#typeChange").attr("disabled",false);
                //模态框消失，重置新增页面
                $('#partOrToolForm select').val('0');
				$(".toolCodeHtml").show();
				$(".toolNameHtml").show();
				$(".toolnumHtml").show();
				$(".tooloCodeHtml").show();
				$(".tooluseFlaghtml").show();
				$(".partCodehtml").show();
				$(".partNameHtml").show();
				$(".locationCodeHtml").show();
				$(".locationNameHtml").show();
				$(".partNumHtml").show();
				$(".nSerialNumHtml").show();
				$(".oSerialNumHtml").show();
				$(".partCodehtml").show();
				$(".useFlagPartHtml").show();
				 $('#partOrToolForm').bootstrapValidator('resetForm', false);
            });
        },
        
		//备件或工装的更换
		addPartOrTool : function(){
			$("#addPartOrTool").on("click",function(){
				$('#partOrToolModal .modal-title').html("新增/修改");
				$(".toolCodeHtml").hide();
				$(".toolNameHtml").hide();
				$(".toolnumHtml").hide();
				$(".tooloCodeHtml").hide();
				$(".tooluseFlaghtml").hide();
				
				$('#partOrToolModal').modal();
				$("#partOrToolModal .yes").attr("disabled",false);
        		$("#locationName").attr("disabled",true);
        		$("#nSerialNum").attr("disabled",true);
        		$("#oSerialNum").attr("disabled",true);
        		$("#useFlag").attr("disabled",true);
        		$("#partName").attr("disabled",true);
        		$("#locationName").attr("disabled",true);
        		$("#toolName").attr("disabled",true);
        		_initToolCodeSelect2 = RepPartOrTool._initToolCodeSelect2();//初始化工装新编码
        		_initProcessToolCodeSelect2 = RepPartOrTool._initProcessToolCodeSelect2();
    			_initOToolCodeSelect2 = RepPartOrTool._initOToolCodeSelect2();//初始化原编码
    			_initPartCodeSelect2 = RepPartOrTool._initPartCodeSelect2();//初始化编码
    			_initProcessPartCodeSelect2 = RepPartOrTool._initProcessPartCodeSelect2();
    			_initLocationCodeSelect2 = RepPartOrTool._initLocationCodeSelect2();//初始化备件位置编码
    			RepPartOrTool.validatorPartToolForm();
                
			});
			//新增-确定
			$("#partOrToolModal .yes").on(
					"click",
					function() {
						$("#partOrToolForm").data("bootstrapValidator").validate();
						var flag = $("#partOrToolForm").data("bootstrapValidator").isValid();
						if(!flag){
							//未通过验证
							return false;
						}
						var ids = $.map($('#malfunctionTable').bootstrapTable('getSelections'), function (row) {
					        return row.pkId;
					    });
						var pkIds = $.map($('#PartAndToolTable').bootstrapTable('getSelections'), function (row) {
					        return row.pkId;
					    });
						if($("#partOrToolForm").find("select[name=type]").find("option:selected").val()=="0"){
							var nSerialNum = $("#partOrToolForm").find("select[name=nSerialNum]").find("option:selected").text();
							var oSerialNum = $("#partOrToolForm").find("select[name=oSerialNum]").find("option:selected").text();
							if(nSerialNum!=null && oSerialNum!=null && nSerialNum!='' && oSerialNum!=''){
								if(nSerialNum==oSerialNum){
									DialogUtil.error("新序列号不允许与原序列号相同");
									return
								}
							}
			                var entity = {};
			                entity['pkId'] = pkIds.toString();
			                entity['planId'] = ids.toString();
			                entity['type'] = $("#partOrToolForm").find("select[name=type]").find("option:selected").val();
			                entity['code'] = $("#partOrToolForm").find("select[name=code]").find("option:selected").text();
			                entity['name'] = $("#partOrToolForm").find("input[name=name]").val();
			                entity['locationCode'] = $("#partOrToolForm").find("select[name=locationCode]").find("option:selected").text();
			                entity['locationName'] = $("#partOrToolForm").find("input[name=locationName]").val();
			                entity['nSerialNum'] = $("#partOrToolForm").find("select[name=nSerialNum]").find("option:selected").text();
			                entity['num'] = $("#partOrToolForm").find("input[name=partnum]").val();
			                entity['oSerialNum'] = $("#partOrToolForm").find("input[name=oSerialNum]").val();
			                entity['useFlag'] = $("#partOrToolForm").find("select[name=useFlag]").find("option:selected").val();
			                console.log(entity);
							$.ajax({
								url : ctx + '/maintain/maintenanceTask/saveReplaceTemp/save.mvc',
								type : "post",
								dataType : 'json',
								data : entity,
								success : function(response) {
									if (response.result == true) {
										DialogUtil.ok("保存成功");
										$('#partOrToolModal').modal('hide');
										$('#PartAndToolTable').bootstrapTable('refresh');
									};
									if (response.result == false && response.message == "新序列号已被添加") {
										DialogUtil.warning("新序列号已被添加");
										$("#myModal .yes").attr("disabled",false);
									}
								},
								error : function(XMLHttpRequest, textStatus, errorThrown) {
									console.log(data);
									alert("系统错误");
								}
							});
						}
						if($("#partOrToolForm").find("select[name=type]").find("option:selected").val()=="1"){
			                var entity = {};
			                entity['pkId'] = $("#partOrToolForm").find("input[name=pkId]").val();
			                entity['planId'] = ids.toString();
			                entity['type'] = $("#partOrToolForm").find("select[name=type]").find("option:selected").val();
			                entity['code'] = $("#toolCode").find("option:selected").text();
                            entity['locationCode'] = $("#partOrToolForm").find("input[name=toollocationCode]").val();
                            entity['locationName'] = $("#partOrToolForm").find("input[name=toollocationName]").val();
			                entity['name'] = $("#toolName").val();
			                entity['num'] = $("#toolnum").val();
			                entity['oCode'] = $("#oCode").find("option:selected").text();
			                entity['useFlag'] = $("#tooluseFlag").find("option:selected").val();
			                console.log(entity);
							$.ajax({
								url : ctx + '/maintain/maintenanceTask/saveReplaceTemp/save.mvc',
								type : "post",
								dataType : 'json',
								data : entity,
								success : function(response) {
									if (response.result == true) {
										DialogUtil.ok("保存成功");
										$('#partOrToolModal').modal('hide');
										$('#PartAndToolTable').bootstrapTable('refresh');
									}else {
			                            DialogUtil.error(response.message);
			                        }
								},
								error : function(XMLHttpRequest, textStatus, errorThrown) {
									console.log(data);
									alert("系统错误");
								}
							});
						}

						return false;
					});
		},
		//更改类型change事件
        _changeTypeInfo:function () {
            $("#typeChange").on("change",function (e) {
                e.preventDefault();
                if($("#partOrToolForm").find("select[name=type]").find("option:selected").val()=="0"){
                    $('#partOrToolModal input').each(function() {
                        if ($(this).val() !== "" ) {
                            $(this).val("");
                        }
                    });
                    $("#partCode").val(null).trigger("change");
                    $("#locationCode").val(null).trigger("change");
                    $("#nSerialNum").val(null).trigger("change");
                    $("#oSerialNum").val(null).trigger("change");
    				$(".toolCodeHtml").hide();
    				$(".toolNameHtml").hide();
    				$(".toolnumHtml").hide();
    				$(".tooloCodeHtml").hide();
    				$(".tooluseFlaghtml").hide();
    				$(".partCodehtml").show();
    				$(".partNameHtml").show();
    				$(".locationCodeHtml").show();
    				$(".locationNameHtml").show();
    				$(".partNumHtml").show();
    				$(".nSerialNumHtml").show();
    				$(".oSerialNumHtml").show();
    				$(".partCodehtml").show();
    				$(".useFlagPartHtml").show();
                }
                if($("#partOrToolForm").find("select[name=type]").find("option:selected").val()=="1"){
                    $('#partOrToolModal input').each(function() {
                        if ($(this).val() !== "" ) {
                            $(this).val("");
                        }
                    });
    				$(".toolCodeHtml").show();
    				$(".toolNameHtml").show();
    				$(".toolnumHtml").show();
    				$(".tooloCodeHtml").show();
    				$(".tooluseFlaghtml").show();
    				$(".partCodehtml").hide();
    				$(".partNameHtml").hide();
    				$(".locationCodeHtml").hide();
    				$(".locationNameHtml").hide();
    				$(".nSerialNumHtml").hide();
    				$(".oSerialNumHtml").hide();
    				$(".partCodehtml").hide();
    				$(".partNumHtml").hide();
    				$(".useFlagPartHtml").hide();
    				
    				$("#toolnum").val(1);
    				$("#toolnum").attr("disabled",true);
                    $("#toolCode").val(null).trigger("change");
                    $("#oCode").val(null).trigger("change");
                }
                

            })
        },
        
        //加载select下拉框--加载备件编码
        _initPartCodeSelect2:function () {
			var equipCode = $.map($('#malfunctionTable').bootstrapTable('getSelections'), function (row) {
		        return row.equipCode;
		    });
            var select2 = $('#partCode').select2({
                ajax: {
                    url: ctx +'/part/partReplace/listModelPartByFilter/get.mvc',
                    dataType: 'json',
                    data: function (params) {
                        return {
                            search: params.term,
                            page: params.page || 1,
                            size: 10,
                            equipCode:equipCode.toString(),
                        };
                    },
                    processResults: function (response) {
                        var test =[];
                        if(response.result === true&&response.data) {
                            var _data = response.data;
                            for ( var int = 0; int < _data.length; int++) {
                                var obj= {};
                                obj.id=_data[int].pkId;
                                obj.text=_data[int].partCode;
                                test.push(obj);
                            }
                        }
                        return {
                            results: test
                        };
                    },
                    cache: true

                },
                placeholder: '请选择',
                language: "zh-CN",
                escapeMarkup: function (markup) { return markup; }, // let our custom formatter work
                minimumInputLength: 0
            });
            return select2;
        },
        //加载select下拉框--加载备件编码
        _initProcessPartCodeSelect2:function () {
			var equipCode = $.map($('#malfunctionTable').bootstrapTable('getSelections'), function (row) {
		        return row.equipCode;
		    });
            var select2 = $('#partCode').select2({
                ajax: {
                    url: ctx +'/part/partReplace/listModelPartByFilter/get.mvc',
                    dataType: 'json',
                    data: function (params) {
                        return {
                            search: params.term,
                            page: params.page || 1,
                            size: 10,
                            equipCode:equipCode.toString(),
                        };
                    },
                    processResults: function (response) {
                        var test =[];
                        if(response.result === true&&response.data) {
                            var _data = response.data;
                            for ( var int = 0; int < _data.length; int++) {
                                var obj= {};
                                obj.id=_data[int].pkId;
                                obj.text=_data[int].partCode;
                                test.push(obj);
                            }
                        }
                        return {
                            results: test
                        };
                    },
                    cache: true

                },
                placeholder: '请选择',
                language: "zh-CN",
                escapeMarkup: function (markup) { return markup; }, // let our custom formatter work
                minimumInputLength: 0
            });
            return select2;
        },
        //改变备件编码
        _initPartCodeChange:function () {
            $("#partCode").on("change",function () {
                var partCode = $("#partCode").val();
                $.ajax({
                    url: ctx + "/part/info/getPartById/get.mvc",
                    type: "post",
                    dataType: "json",
                    data: {
                    	pkId: partCode
                    },
                    success: function (response) {
                        if (response.result === true) {
                            if(response.data) {
                                $('#partOrToolModal input').each(function() {
                                    if ($(this).val() !== "" ) {
                                        $(this).val("");
                                    }
                                });
                                $("#locationCode").val(null).trigger("change");
                                $("#nSerialNum").val(null).trigger("change");
                                $("#oSerialNum").val(null).trigger("change");
                        		$("#partName").attr("disabled",true);
                        		$("#locationName").attr("disabled",true);
                            	$("#partName").val(response.data.partName);
                            	if(response.data.keyPartFlag==1){
                            		$("#nSerialNum").attr("disabled",true);
                            		$("#oSerialNum").attr("disabled",true);
                            		$("#useFlag").attr("disabled",true);
                            		$(".partNumHtml").show();
                            		$("#useFlag").val('');
                            	}
                            	if(response.data.keyPartFlag==0){
                            		$("#nSerialNum").attr("disabled",false);
                            		$("#oSerialNum").attr("disabled",false);
                            		$("#useFlag").attr("disabled",false);
                            		$(".partNumHtml").hide();
                            	}
                            }
                        } else {
                            DialogUtil.error(response.message);
                        }
                    },
                    error: function () {
                        DialogUtil.error("系统繁忙！");
                    }
                });
            })
        },
        //加载select下拉框--加载备件位置编码
        _initLocationCodeSelect2:function () {
			var equipCode = $.map($('#malfunctionTable').bootstrapTable('getSelections'), function (row) {
		        return row.equipCode;
		    });
            var select2 = $('#locationCode').select2({
                ajax: {
                    url: ctx +'/modelPart/partConfigure/listlmodelPartByPartId/get.mvc',
                    dataType: 'json',
                    data: function (params) {
                        return {
                            search: params.term,
                            page: params.page || 1,
                            size: 10,
                            partId:$("#partCode").val(),
                            equipCode : equipCode.toString()
                        };
                    },
                    processResults: function (response) {
                        var test =[];
                        if(response.result === true&&response.data) {
                            var _data = response.data;
                            for ( var int = 0; int < _data.length; int++) {
                                var obj= {};
                                obj.id=_data[int].pkId;
                                obj.text=_data[int].locationCode;
                                test.push(obj);
                            }
                        }
                        return {
                            results: test
                        };
                    },
                    cache: true

                },
                placeholder: '请选择',
                language: "zh-CN",
                escapeMarkup: function (markup) { return markup; }, // let our custom formatter work
                minimumInputLength: 0
            });
            return select2;
        },
        
        //改变备件位置编码
        _initLocationCodeChange:function () {
            $("#locationCode").on("change",function () {
                var  pkId = $("#locationCode").val();
                $.ajax({
                    url: ctx + "/modelPart/partConfigure/getPartConfigInfoById/get.mvc",
                    type: "post",
                    dataType: "json",
                    data: {
                    	pkId: pkId
                    },
                    success: function (response) {
                        if (response.result === true) {
                            if(response.data) {
                            	$("#partOrToolModal input[name='locationName']").val(response.data.locationName);
                            }
                        } else {
                            DialogUtil.error(response.message);
                        }
                    },
                    error: function () {
                        DialogUtil.error("系统繁忙！");
                    }
                });
            })
        },
        

        //改变位置编码，获取原备件序列号
        _initLocationCodeChangeOseri:function () {
            $("#locationCode").on("change",function () {
                var  localtionId = $("#locationCode").val();
    			var equipCode = $.map($('#malfunctionTable').bootstrapTable('getSelections'), function (row) {
    		        return row.equipCode;
    		    });
                var partCode = $("#partCode").val();
                $.ajax({
                    url: ctx + "/part/partReplace/getKeyPartByPartId/get.mvc",
                    type: "post",
                    dataType: "json",
                    data: {
                    	localtionId : localtionId,
                    	partId: partCode,
                    	equipCode : equipCode.toString()
                    },
                    success: function (response) {
                        if (response.result === true) {
                            if(response.data) {
                            	$("#oSerialNum").val(response.data.nSerialNum);
                            }
                        } else {
                            DialogUtil.error(response.message);
                        }
                    },
                    error: function () {
                        DialogUtil.error("系统繁忙！");
                    }
                });
            })
        },
        

        //加载select下拉框--加载新序列号
        _initNseriNumCodeSelect2:function () {
            var select2 = $('#nSerialNum').select2({
                ajax: {
                    url: ctx +'/part/keyPart/getAllKeyPartByPartId/get.mvc',
                    dataType: 'json',
                    data: function (params) {
                        return {
                            search: params.term,
                            page: params.page || 1,
                            size: 10,
                            partId:$("#partCode").val()
                        };
                    },
                    processResults: function (response) {
                        var test =[];
                        if(response.result === true&&response.data) {
                            var _data = response.data;
                            for ( var int = 0; int < _data.length; int++) {
                                var obj= {};
                                obj.id=_data[int].pkId;
                                obj.text=_data[int].oSerialNum;
                                test.push(obj);
                            }
                        }
                        return {
                            results: test
                        };
                    },
                    cache: true

                },
                placeholder: '请选择',
                language: "zh-CN",
                escapeMarkup: function (markup) { return markup; }, // let our custom formatter work
                minimumInputLength: 0
            });
            return select2;
        },
        
        //加载select下拉框--加载工装编码
        _initToolCodeSelect2:function () {
			var equipCode = $.map($('#malfunctionTable').bootstrapTable('getSelections'), function (row) {
		        return row.equipCode;
		    });
			console.log("设备编码为："+equipCode);
            var select2 = $('#toolCode').select2({
                ajax: {
                    url: ctx +'/tool/replace/getToolListBytoolCode/get.mvc',
                    dataType: 'json',
                    data: function (params) {
                        return {
                            toolCode: params.term,
                            page: params.page || 1,
                            size: 10,
                            equipCode: equipCode.toString()
                        };
                    },
                    processResults: function (response) {
                        var test =[];
                        if(response.result === true&&response.data) {
                            var _data = response.data;
                            for ( var int = 0; int < _data.length; int++) {
                                var obj= {};
                                obj.id=_data[int].pkId;
                                obj.text=_data[int].toolCode;
                                test.push(obj);
                            }
                        }
                        return {
                            results: test
                        };
                    },
                    cache: true

                },
                placeholder: '请选择',
                language: "zh-CN",
                escapeMarkup: function (markup) { return markup; }, // let our custom formatter work
                minimumInputLength: 0
            });
            return select2;
        },
        
        //加载select下拉框--加载工装编码
        _initProcessToolCodeSelect2:function () {
			var equipCode = $.map($('#malfunctionTable').bootstrapTable('getSelections'), function (row) {
		        return row.equipCode;
		    });
			console.log("设备编码为："+equipCode);
            var select2 = $('#toolCode').select2({
                ajax: {
                    url: ctx +'/tool/replace/getToolListBytoolCode/get.mvc',
                    dataType: 'json',
                    data: function (params) {
                        return {
                            toolCode: params.term,
                            page: params.page || 1,
                            size: 10,
                            equipCode: equipCode.toString()
                        };
                    },
                    processResults: function (response) {
                        var test =[];
                        if(response.result === true&&response.data) {
                            var _data = response.data;
                            for ( var int = 0; int < _data.length; int++) {
                                var obj= {};
                                obj.id=_data[int].pkId;
                                obj.text=_data[int].toolCode;
                                test.push(obj);
                            }
                        }
                        return {
                            results: test
                        };
                    },
                    cache: true

                },
                placeholder: '请选择',
                language: "zh-CN",
                escapeMarkup: function (markup) { return markup; }, // let our custom formatter work
                minimumInputLength: 0
            });
            return select2;
        },
        
        //改变工装编码
        _initToolCodeChange:function () {
            $("#toolCode").on("change",function () {
                var  pkId = $("#toolCode").val();
                $.ajax({
                    url: ctx + "/tool/toolInfo/getToolInfoById/get.mvc",
                    type: "post",
                    dataType: "json",
                    data: {
                    	pkId: pkId
                    },
                    success: function (response) {
                        if (response.result === true) {
                            if(response.data) {
                            	$("#partOrToolModal input[name='name']").val(response.data.toolName);
                            }
                        } else {
                            DialogUtil.error(response.message);
                        }
                    },
                    error: function () {
                        DialogUtil.error("系统繁忙！");
                    }
                });
            })
        },
        
        //加载select下拉框--加载工装编码
        _initOToolCodeSelect2:function () {
			var equipCode = $.map($('#malfunctionTable').bootstrapTable('getSelections'), function (row) {
		        return row.equipCode;
		    });
            var select2 = $('#oCode').select2({
                ajax: {
                    url: ctx +'/tool/replace/getToolConfigByToolCode/get.mvc',
                    dataType: 'json',
                    data: function (params) {
                        return {
                            toolCode: params.term,
                            page: params.page || 1,
                            size: 10,
                            equipCode: equipCode.toString()
                        };
                    },
                    processResults: function (response) {
                        var test =[];
                        if(response.result === true&&response.data) {
                            var _data = response.data;
                            for ( var int = 0; int < _data.length; int++) {
                                var obj= {};
                                obj.id=_data[int].pkId;
                                obj.text=_data[int].toolCode;
                                test.push(obj);
                            }
                        }
                        return {
                            results: test
                        };
                    },
                    cache: true

                },
                placeholder: '请选择',
                language: "zh-CN",
                escapeMarkup: function (markup) { return markup; }, // let our custom formatter work
                minimumInputLength: 0
            });
            return select2;
        },
        

		//修改备件或工装
		upDatePartOrTool : function(){
			//修改
			$("#upDatePartOrTool").on("click",function(){
				$('#partOrToolModal .modal-title').html("新增/修改");
				var ids = $.map($('#PartAndToolTable').bootstrapTable('getSelections'), function (row) {
			        return row.pkId;
			    });
			    if (ids.length != 1 ) {
			    	DialogUtil.warning("请选择一行修改");
			        return;
			    }
			    var type = $.map($('#PartAndToolTable').bootstrapTable('getSelections'), function (row) {
			        return row.type;
			    });
                if(type.toString()=="0"){
    				$(".toolCodeHtml").hide();
    				$(".toolNameHtml").hide();
    				$(".toolnumHtml").hide();
    				$(".tooloCodeHtml").hide();
    				$(".tooluseFlaghtml").hide();
    				$(".partCodehtml").show();
    				$(".partNameHtml").show();
    				$(".locationCodeHtml").show();
    				$(".locationNameHtml").show();
    				$(".partNumHtml").show();
    				$(".nSerialNumHtml").show();
    				$(".oSerialNumHtml").show();
    				$(".partCodehtml").show();
    				$(".useFlagPartHtml").show();
                }
                if(type.toString()=="1"){
    				$(".toolCodeHtml").show();
    				$(".toolNameHtml").show();
    				$(".toolnumHtml").show();
    				$(".tooloCodeHtml").show();
    				$(".tooluseFlaghtml").show();
    				$(".partCodehtml").hide();
    				$(".partNameHtml").hide();
    				$(".locationCodeHtml").hide();
    				$(".locationNameHtml").hide();
    				$(".nSerialNumHtml").hide();
    				$(".oSerialNumHtml").hide();
    				$(".partCodehtml").hide();
    				$(".partNumHtml").hide();
    				$(".useFlagPartHtml").hide();
    				
    				$("#toolnum").val(1);
    				$("#toolnum").attr("disabled",true);
                };

                //加载信息
                $.ajax({
                    url: ctx+"/maintain/maintenanceTask/getTempsByPkId/get.mvc",
                    type: "post",
                    dataType: "json",
                    data:{
                        pkId:ids.toString()
                    },
                    success :function(response) {
                    	
                        if(response.result === true&&response.data) {
                        	$('#partOrToolModal').modal();
                        	if(response.data.type=='0'){
                        		$('#partOrToolForm select').val('0');
                        		$("#typeChange").attr("disabled",true);
                        		//初始化备件编码
//                        		_initPartCodeSelect2 = TaskInit._initPartCodeSelect2();//初始化编码
                                var partId = response.data.partId;
                                var partCode = response.data.code;
                                if(partId!==''&&partCode!=='') {
                                    var option = new Option(partCode,partId,true,true);
                                    _initPartCodeSelect2.append(option);
//                                    _initPartCodeSelect2.trigger("change");
                                }
                                $("#partName").attr("disabled",true);
                                $("#partName").val(response.data.name);
                                //初始化备件位置编码
                                var locationId = response.data.locationId;
                                var locationCode = response.data.locationCode;
                                if(locationId!==''&&locationCode!=='') {
                                    var option = new Option(locationCode,locationId,true,true);
                                    _initLocationCodeSelect2.append(option);
                                    _initLocationCodeSelect2.trigger("change");
                                }
                                
                                //初始化备件新序列号
                                var nSerId = response.data.nSerId;
                                var nSerialNum = response.data.nSerialNum;
                                if(nSerId!==''&&nSerialNum!=='') {
                                    var option = new Option(nSerialNum,nSerId,true,true);
                                    _initNseriNumCodeSelect2.append(option);
                                    _initNseriNumCodeSelect2.trigger("change");
                                }
                                
                                if(response.data.num=='' || response.data.num==null){
                                	$(".partNumHtml").hide();
                                }else{
                                	$("#partOrToolForm").find("input[name=partnum]").val(response.data.num);
                                }
                                $("#useFlag").attr("selected",true);
                                $("#partOrToolForm").find("input[name=pkId]").val(response.data.pkId);
                        	}
                        	if(response.data.type=='1'){
                        		$('#partOrToolForm select').val('1');
                        		$("#typeChange").attr("disabled",true);
                                _initToolCodeSelect2 = RepPartOrTool._initToolCodeSelect2();//初始化工装新编码
                                var nToolId = response.data.nToolId;
                                var ntoolCode = response.data.code;
                                if(nToolId!==''&&ntoolCode!=='') {
                                    var option = new Option(ntoolCode,nToolId,true,true);
                                    _initToolCodeSelect2.append(option);
                                    _initToolCodeSelect2.trigger("change");
                                }
                                var oToolId = response.data.oToolId;
                                var otoolCode = response.data.oCode;
                                if(oToolId!==''&&otoolCode!=='') {
                                    var option = new Option(otoolCode,oToolId,true,true);
                                    _initOToolCodeSelect2.append(option);
                                    _initOToolCodeSelect2.trigger("change");
                                }
                                $("#partOrToolForm").find("input[name=toolnum]").val(response.data.num);
                                $("#useFlag").attr("selected",true);
                                $("#partOrToolForm").find("input[name=pkId]").val(response.data.pkId);
                                
                        	}
                        	
                        } else {
                            DialogUtil.error(response.message);
                        }
                    },
                    error :function() {
                        DialogUtil.error("系统繁忙！");
                    }
                });
			    
                RepPartOrTool.validatorPartToolForm();
			});
		},
		


		//删除备件或工装
		delPartOrTool : function () {
            $("#delPartOrTool").on("click", function(){
                var ids = $.map($('#PartAndToolTable').bootstrapTable('getSelections'), function (row) {
                    return row.pkId;
                });
                if (ids.length <1 ) {
                    DialogUtil.warning("请选择需要删除的记录");
                    return false;
                }
                DialogUtil.ok_and_cancel("是否确定删除记录？",function(){
                    $.ajax({
                        url: ctx + '/maintain/maintenanceTask/delReplaceTemp/del.mvc',
                        type:"post",
                        dataType:'json',
                        data : {
                            pkId : ids.toString()
                        },
                        success : function(response){
                            console.log(response);
                            if (response.result === true) {
                                DialogUtil.warning("删除成功");
                                $('#PartAndToolTable').bootstrapTable('refresh');
                            }else {
                                DialogUtil.error(response.message);
                            }
                        },
                        error: function(XMLHttpRequest, textStatus, errorThrown){
                            DialogUtil.error(errorThrown);
                        }
                    });
                },function(){

                });
            });
        },
        
		//校验表单
		validatorPartToolForm : function(){
			$("#partOrToolForm").bootstrapValidator({
				message: 'This value is not valid',
	            live: 'submitted',
	            fields: {/*验证*/
	            	type: {
	                    message: '类型编号无效',
	                    validators: {
	                        notEmpty: {
	                            message: '类型不能为空'
	                        },
	                    }
	                },
	                code: {
	                    message: '保养类别编码无效',
	                    validators: {
	                        notEmpty: {
	                            message: '保养类别编码不能为空'
	                        },
	                    }
	                },
	                locationCode: {
	                    message: '备件位置编码无效',
	                    validators: {
	                        notEmpty: {
	                            message: '备件位置编码不能为空'
	                        },
	                    }
	                },
	                
	                nSerialNum: {
	                    message: '新序列号无效',
	                    validators: {
	                        notEmpty: {
	                            message: '新序列号不能为空'
	                        },
	                    }
	                },
	                partnum: {
	                    message: '数量无效',
	                    validators: {
	                        notEmpty: {
	                            message: '数量不能为空'
	                        },
	                    }
	                },
	                toolnum: {
	                    message: '数量无效',
	                    validators: {
	                        notEmpty: {
	                            message: '数量不能为空'
	                        },
	                    }
	                },
	                useFlag: {
	                    message: '原状态无效',
	                    validators: {
	                        notEmpty: {
	                            message: '原状态不能为空'
	                        },
	                    }
	                },
	            }
			});
			
			//模态框消失清空信息
			$("#myModal").on("hidden.bs.modal",function(e){
				$('#myModal input[type=text]').each(function() {
					$(this).val("");
				});
				$('#defaultForm').data('bootstrapValidator').destroy();
				RepPartOrTool.validatorPartToolForm();
			});
		},
	};
}(); 


//jQuery(document).ready(function() {
//	RepPartOrTool.init();
//});

